@mixin make-flex() {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@mixin flex($value) {
  flex: 0 0 $value;
  @include ie-flex-fix($value)
}

@mixin flex-grid($sm, $md, $lg, $base:100%) {
  flex: 0 0 $base;
  @include media-breakpoint-up(sm) {
    flex: 0 0 $sm;
    @include ie-flex-fix($sm);
  }
  @include media-breakpoint-up(md) {
    flex: 0 0 $md;
    @include ie-flex-fix($md);
  }
  @include media-breakpoint-up(lg) {
    flex: 0 0 $lg;
    @include ie-flex-fix($lg);
  }
}

@mixin ie-flex-fix($flex-number) {
  @media all and (-ms-high-contrast: none) {
    max-width: $flex-number;
  }
}

@mixin position($top, $right, $bottom, $left) {
  top: $top;
  right: $right;
  bottom: $bottom;
  left: $left;
}

@mixin fixed($top, $right, $bottom, $left) {
  position: fixed;
  @include position($top, $right, $bottom, $left);
}

@mixin absolute($top, $right, $bottom, $left) {
  position: absolute;
  @include position($top, $right, $bottom, $left);
}

@mixin flex-padding($value) {
  @include media-breakpoint-up(md) {
    padding: 0 0 0 $value;
    &:nth-of-type(odd) {
      padding: 0 $value 0 0;
    }
  }
}

@mixin paddless-header {
  h1, h2, h3, h4, h5, h6 {
    padding: 0;
    margin: 0;
  }
}
